package com.wantupai.mvp.framework.support.activity;

import android.os.Bundle;
import android.support.annotation.Nullable;

import com.wantupai.mvp.mvp.MvpPresenter;
import com.wantupai.mvp.mvp.MvpView;


/**
 * 代理模式->第一重代理->生命周期->目标接口：定义的是Activity生命周期方法
 *
 * @param <V>
 * @param <P>
 * @author :zhangqing
 */
public interface ActivityMvpDelegate<V extends MvpView, P extends MvpPresenter<V>> {

    void onCreate(Bundle savedInstanceState);

    void onStart();

    void onRestart();

    void onResume();

    void onPause();

    void onStop();

    void onDestroy();

    /**
     * 增加数据缓存生命周期方法
     *
     * @param outState
     */
    void onSaveInstanceState(Bundle outState);

    void onPostCreate(@Nullable Bundle savedInstanceState);

}
